Computer systems are currently in wide use. Many computer systems are quite large, and have a large number of pages, forms, or other display surfaces.
For instance, some such computer systems include business systems. Business systems can include, for example, enterprise resource planning (ERP) systems, customer relations management (CRM) systems, line-of-business (LOB) systems, among others. These types of systems can have thousands of different forms, each of which have many different controls. The controls can have commands (or command input mechanisms) that can be actuated by a user to perform operations.
In fact, almost every user interface surface in a business system has a variety of different types of commands. The commands change based upon the context of the business system. For instance, if the user is viewing an opportunity form, the form may display commands that allow the user to edit or delete the opportunity record. If the user selects a given line item in a list or grid within the opportunity record, the user may be presented with additional commands that allow the user to perform other actions with respect to that list item. The additional commands are provided because the context of the underlying application changed. The user was not simply reviewing the opportunity record anymore, but the user had now selected a list or grid item.
Currently, all commands are hard coded on the various pages on which they are generated. Therefore, there is virtually no mechanism by which the commands on a given page can be extended or otherwise customized, without a great deal of coding
The discussion above is merely provided for general background information and is not intended to be used as an aid in determining the scope of the claimed subject matter.